NetworkManagers NmClient has a bug for wireguard connections where the
notify::active-connections and connection-added are emitted in the wrong order:
When a wireguard connection gets activated, notify::active-connections is
emitted first, then connection-added happens.
We currently expect these signals to emitted in the correct order, so our VPN
toggle is not actually updated when a wireguard connection is established.
Until this bug is fixed in NetworkManager, work it around by calling
_syncActiveConnections() manually after we see ::connection-added.
NM issue: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/1483
Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6656
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3219>
'activation-failed', () => this.emit('activation-failed'),
this);
this._addItem(connection, item);
+
+ // FIXME: NM is emitting "connection-added" after "notify::active-connections",
+ // so we need to sync connections here once again.
+ this._syncActiveConnections();
}
_removeConnection(connection) {